This invention relates to an information recording-reproducing apparatus for recording and/or reproducing information, and particularly to an information recording-reproducing head driving circuit for driving a recording and/or reproducing head in such an apparatus.
Various forms such as a disk-like form, a card-like form and a tape-like form are known as the forms of recording media for recording information thereon by the use of a semiconductor laser and reading out the recorded information therefrom. Among these optical information recording media, the card-like optical information recording medium (hereinafter referred to as the optical card) is expected to have great demand as an information recording medium of relatively great capacity which is compact and light in weight and readily portable.
FIG. 1 of the accompanying drawings is a block diagram of an optical card information recording-reproducing apparatus for recording information on an optical card and reproducing the information recorded on the optical card.
In FIG. 1, the reference numeral 50 designates a host computer which is a host controller, the reference numeral 51 denotes an optical card information recording-reproducing apparatus, and the reference numeral 57 designates an optical card.
The apparatus 51 includes an apparatus controlling MPU 52 containing therein a CPU, a timer and a memory, a signal modulation-demodulation circuit 53, a semiconductor laser driving circuit 54, an auto-focus (AF) and auto-tracking (AT) control circuit 55, an optical head 56, a pulse motor 58 which is a head feeding mechanism for moving the optical head across tracks and causing a light beam spot to access to a desired track on the optical card, a DC motor 59 for feeding the optical card, a rotary encoder 60 mounted on the DC motor to detect the amount of feeding of the optical card, PLL 61 for rotating the DC motor at a constant speed, an optical card insertion sensor 62 and an optical card erroneous insertion discrimination sensor 63.
FIG. 2 of the accompanying drawings is a block diagram of a driving circuit for the pulse motor 58 shown in FIG. 1. A motor driver 1 amplifies a pulse output by the MPU 52 and applies it to the pulse motor 58 thereby driving the pulse motor 58.
FIG. 3 of the accompanying drawings schematically shows the head feeding mechanism and the optical card. An information recording area 4 exists on the optical card 57, and tracking tracks 2 and information tracks 3 are included in the area 4. As the pulse motor 58 rotates, a lead screw 5 is rotated, and power is transmitted to the optical head 56 through a needle 6, whereby the optical head 56 is moved along guide rods 7 in a direction transverse to the information tracks 3.
FIG. 4 of the accompanying drawings is a schematic view of the optical head 56. The reference numeral 64 designates a semiconductor laser, the reference numeral 65 denotes a collimator lens, the reference numeral 66 designates a beam splitter, the reference numeral 67 denotes an objective lens, the reference numeral 57 designates an optical card, the reference numeral 72 denotes a transparent substrate, the reference numeral 70 designates a recording layer, the reference numeral 71 denotes a back-up substrate, the reference numeral 68 designates a condensing lens, and the reference numeral 69 denotes a photo-detector. A light beam emitted from the semiconductor laser 64 is made into a parallel light beam by the collimator lens 65, is transmitted through the beam splitter 66, is stopped down by the objective lens 67 and forms a minute spot on the information recording layer 70 of the optical card 57. The reflected light from the information recording layer 70 of the optical card 57 is again made into a parallel light beam by the objective lens 67, and is reflected by the beam splitter 66 and passes through the condensing lens 68 to the photodetector 69. The output of the photodetector 69 is input to the AT/AF control circuit, and AF control and AT control are effected by the use of a conventional method.
A description will now be provided of the operation of effecting recording or reproduction on the basis of the above-described construction after the optical card is inserted into the apparatus 51.
When the optical card is inserted into the apparatus 51, the insertion sensor 62 detects the insertion of the optical card, and the MPU 52 drives the DC motor. When the optical card is directed into the apparatus 51 by a conveying mechanism, not shown, whether the optical card has been inserted in a regular state is determined by the discrimination sensor 63, and if it is determined that the optical card has been inserted in a regular state, the optical card is fed to a predetermined position. Thereafter, the semiconductor laser driving circuit is driven to turn on the semiconductor laser. Subsequently, the MPU 52 drives the pulse motor 58 to draw in AT and AF by a desired track on the optical card. When the optical head arrives at the desired track, AT and AF are drawn in. When information is to be recorded on the optical card, the DC motor is driven to thereby reciprocally move the optical card and recording information is transferred from the host computer 50 to the modulation-demodulation circuit 53 of the apparatus 51, and the semiconductor laser driving circuit 55 is driven in accordance with a modulation signal, whereby the recording of the information is effected. During reproduction, the optical card is likewise reciprocally moved, whereby the light beam spot scans a recording pit. Accordingly, a reproduction signal is obtained in the photodetector 69 and this is transferred to the host computer 50 through the modulation-demodulation circuit 53, whereby there is obtained reproduced information.
Now, to effect the recording and reproduction of the information, it is necessary to cause the light beam spot to access a desired track on the optical card as previously described. The time required for such access of the optical head greatly affects the throughput of the apparatus and therefore, in recent years, it has been desired to shorten the access time.
To shorten the access time, it is necessary to shorten the seek time during with the head is moved. As a technique therefor, there is a method of velocity-controlling the head by a trapezoidal locus.
FIG. 5 of the accompanying drawings shows the relation between the seek time during which the head was sought by a trapezoidal locus and the movement velocity of the head.
The method of velocity-controlling the head by a trapezoidal locus will now be described with reference to Table 1 and FIGS. 6A and 6B of the accompanying drawings. Table 1 is an example of data table for driving the pulse motor, and this table will hereinafter be called the acceleration table. The data in such an acceleration table are usually written with data used during acceleration as a standard. (During deceleration, data is read in reverse. Also, this acceleration table is usually stored in the memory of the MPU in the apparatus. PMTBL means the top address of the table, PMEND means the end address of the table, and DW means that the data succeeding thereto is data of two bytes. TB.sub.p case of Table 1, the pointer number becomes greater in the rightward direction and downward direction of the data row with a value 5715 as pointer 0). Flow charts for velocity-controlling the head by a trapezoidal locus are shown in FIGS. 6A and 6B. However, the range of the table pointer p is greater than 0 and less than N. FIG. 6A is a background routine, and FIG. 6B is a timer interrupt routine.
The background routine of FIG. 6A will first be described. When an access command comes in from an outside host computer, the MPU 52 calculates the seek track number (hereinafter referred to as CNT) from the current track to a desired track. When CNT is greater than two times, i.e., N (the total number of the data of the acceleration table), if the seek track number during the acceleration period is CNT1, CNT1 is N, and if the seek track number corresponding to a predetermined velocity period is CNT2, CNT2 is (CNT-2N). Also, if the seek track number corresponding to the deceleration period is CNT3, CNT3 is N. When CNT is 2N or less, whether CNT can be divided by 2 is examined, and when it cannot be divided, the seek track number CNT1 corresponding to the acceleration period is made into the same value as the quotient obtained by dividing CNT by 2, and the seek track number CNT2 corresponding to the predetermined velocity period is made into 1, and the seek track number CNT3 corresponding to the deceleration period is made into the same value as CNT1. Also, when CNT can be divided by 2, the seek track number CNT1 corresponding to the acceleration period is made into the same value as the quotient obtained by dividing
number CNT2 corresponding to the predetermined velocity period is made into 0, and the seek track number CNT3 during the deceleration period is made into the same value as CNT1. The seek track numbers corresponding to the acceleration period, the predetermined velocity period and the deceleration period, respectively, are determined in this manner and the values thereof are stored in a memory (steps 72-76). Thereafter, the table pointer p is set to 0 (step 77), and then the timer in the MPU 52 is initialized (step 78), and timer interruption is permitted (step 79). Subsequently, if CNT.noteq.0 (or CNT2.noteq.0 or CNT3.noteq.0) (steps 710, 711 and 712), the program skips to the timer interrupt routine.
Here, a description will be provided of the timer interrupt routine of FIG. 6B. Since processing differs when the movement velocity of the head is acceleration, a predetermined velocity or deceleration, the program branches off to respective processes depending on the values of CNT1, CNT2 and CNT3.
If CNT1.noteq.0 (CNT2.noteq.0, CNT3.noteq.0) (steps 714 and 718), the program branches off to p13, and 1 is subtracted from CNT1 previously stored in the memory (step 715). Thereafter, data (count value) indicated by the table pointer p is set in the timer (step 716), and the table pointer is increased by 1 (step 717).
If the head is rotating at a predetermined velocity, the program branches off to p14, and 1 is subtracted from CNT2 (step 719). Thereafter, the data indicated by the table pointer p is set in the timer (step 720).
If the pulse motor is decelerating, the program branches off to p15, and 1 is subtracted from CNT2 (step 721). Thereafter, 1 is subtracted from the table pointer p (step 722), and the data indicated by the table pointer is set in the timer (step 723).
At p13, p14 and p15, the data set in the timer is counted down by the timer and when the count value becomes 0, the MPU 52 outputs a pulse for driving the pulse motor (step 729), thus terminating the interrupt routine. The process is then returned to the background routine. If CNT1.noteq.0 (or CNT2.noteq.0 or CNT3.noteq.0), a similar operation is repeated again (steps 710, 711 and 712). That is, during the acceleration, the table data is read in by the number of times indicated by CNT1, and during the predetermined velocity, the pulse motor is rotated by the use of the same table data by the number of times indicated by CNT2, and during the deceleration, the table data is read in reverse by the number of times indicated by CNT3. When finally, CNT3 becomes 0, the timer interrupt is inhibited (step 713) and the seek operation is terminated.
In the prior-art apparatus, however, when an attempt is made to effect highly accurate head feeding at a high speed, the amount of data in the data table for driving the pulse motor becomes great, and as a result, the data occupy much of the memory in the MPU. This has been a serious problem for the MPU which originally has a small memory capacity.